package com.whjfxx.terminal.biz.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.whjfxx.terminal.biz.param.SearchParam;
import com.whjfxx.terminal.biz.param.TerminalPageParam;
import com.whjfxx.terminal.biz.param.TerminalParam;
import com.whjfxx.terminal.biz.vo.TerminalVo;
import com.whjfxx.terminal.entity.PoTerminal;

import java.util.List;

public interface PoTerminalService extends IService<PoTerminal> {

    /**
     * 分页查询
     * @param searchParam
     * @return
     */
    Page<TerminalVo> pageList(SearchParam<TerminalPageParam> searchParam);

    /**
     * 新增保存
     * @param param
     */
    void insertSave(TerminalParam param, String addType);

    /**
     * 修改保存
     * @param param
     */
    void updateSave(TerminalParam param);

    /**
     * 删除
     * @param id
     */
    void delete(Long id);

    /**
     * 正式导入数据
     * @param uuid
     */
    void import2Terminal(String uuid);

    void disable(List<Long> ids);

    void enable(List<Long> ids);


    List<PoTerminal> getBySn(String sn);

    /**
     * 根据sn吗查询
     * @param sn
     * @return
     */
    PoTerminal getBySnAndFuncId(String sn, Long funcId);

    /**
     * 根据sn吗查询
     * @param sn
     * @return
     */
    PoTerminal getBySnAndFuncName(String sn, String funcName);

}
